package com.example.cc.client.properties;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
import org.springframework.validation.annotation.Validated;

import javax.validation.constraints.NotEmpty;


@Data
@ConfigurationProperties(prefix = "config.center")
@Validated
@Component
public class ConfigCenterProperties {

    /**
     * 配置中心地址
     */
    @NotEmpty(message = "配置中心地址不能为空")
    private String serverUrl;

    /**
     * 客户端ID
     */
    @NotEmpty(message = "clientId不能为空")
    private String clientId;

    /**
     * 客户端名称
     */
    private String clientName;

    /**
     * 客户端密钥
     */
    private String clientSecret;

    /**
     * 超时时间（毫秒）
     */
    private int timeout = 5000;

    /**
     * 是否启用自动刷新配置
     */
    private boolean autoRefreshEnabled = true;

    /**
     * 命名策略
     */
    private String nameStrategy;

}
